package com.example.designpatterns.flyweight;

// 具体享元类
public class Circle implements Shape {
    // 内部状态 - 这部分不会因为环境改变而改变
    // 圆的颜色
    private String color;
    // 圆的半径
    private int radius;
    
    // 构造函数设置内部状态
    public Circle(String color, int radius) {
        this.color = color;
        this.radius = radius;
        // 模拟对象创建的开销
        System.out.println("创建 " + color + " 圆形对象，半径: " + radius);
    }
    
    // 使用外部状态绘制圆形
    @Override
    public void draw(int x, int y) {
        System.out.println("绘制 " + color + " 圆形: 中心坐标(" + x + ", " + y + 
                "), 半径: " + radius);
    }
} 